#嵌套函数
#了解一下：闭包、装饰器
def function_out():
    print("out")
    #嵌套进out中的一个函数
    def function_inner():
        print("inner")
    #在函数中调用内部函数,一定要调用才能执行
    function_inner()
    function_other()

def function_other():
    print("other")

#尽可能的把调用往后去写，确保所有的全局的方法、变量都已经被加载
#函数内部调用其他函数，直接也触发这个其他函数
#调用的一定是一个在全局中声明过的函数，如果是在局部声明的，在全局中无法被调用
function_out()







#递归
#自己调用自己，容易出现问题：死循环
# count=0
# def function_clac():
#     global count
#     count+=1
#     print(count)
#     function_clac()

def function_clac1(num):
    print(num)
    if int(num/2)==0:
        return
    function_clac1(int(num/2))

function_clac1(10)